//package org.halk;
//
//import org.opencv.core.Core;
//import org.opencv.core.Mat;
//import org.opencv.core.Size;
//import org.opencv.videoio.VideoCapture;
//import org.opencv.videoio.VideoWriter;
//import org.opencv.imgcodecs.Imgcodecs;
//import org.opencv.imgproc.Imgproc;
//import org.opencv.videoio.Videoio;
//
//public class CameraCapture {
//    static {
//        System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
//    }
//
//    public static void main(String[] args) {
//        // 初始化VideoCapture对象，参数0代表默认摄像头
//        VideoCapture capture = new VideoCapture(0);
//
//        // 检查是否成功打开摄像头
//        if (!capture.isOpened()) {
//            System.out.println("无法打开摄像头");
//            return;
//        }
//
//        // 获取摄像头的帧率和大小
//        double fps = capture.get(Videoio.CAP_PROP_FPS);
//        int width = (int) capture.get(Videoio.CAP_PROP_FRAME_WIDTH);
//        int height = (int) capture.get(Videoio.CAP_PROP_FRAME_HEIGHT);
//
//        // 设置视频编码器和输出文件名
//        int fourcc = VideoWriter.fourcc('M','J','P','G'); // 或使用其他编码如'X','2','6','4' 对应于H264
//        String filename = "output.avi";
//
//        // 创建VideoWriter对象用于保存视频
//        VideoWriter writer = new VideoWriter(filename, fourcc, fps, new Size(width, height), true);
//
//        Mat frame = new Mat();
//
//        while (true) {
//            // 读取一帧
//            capture.read(frame);
//
//            // 如果帧为空，则跳出循环
//            if (frame.empty()) break;
//
//            // 可选：对帧进行处理，比如添加水印、滤镜等
//            // Imgproc.putText(frame, "Sample", new Point(50, 50), FONT_HERSHEY_SIMPLEX, 1, new Scalar(255, 255, 255), 2);
//
//            // 写入帧到视频文件
//            writer.write(frame);
//
//            // 显示帧（可选，用于预览）
//            // Imgcodecs.imwrite("preview.jpg", frame); // 或使用imshow()在窗口显示
//            // if (waitKey(1) >= 0) break; // 按任意键退出
//
//            // 模拟延时以控制帧率，实际应用中可能不需要
//            try {
//                Thread.sleep((long)(1000/fps));
//            } catch (InterruptedException e) {
//                e.printStackTrace();
//            }
//        }
//
//        // 释放资源
//        capture.release();
//        writer.release();
//        System.out.println("视频录制完成");
//    }
//}
